<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">

    <meta name="twitter:site" content="@metroui">
    <meta name="twitter:creator" content="@pimenov_sergey">
    <meta name="twitter:card" content="summary">
    <meta name="twitter:title" content="Metro 4 Components Library">
    <meta name="twitter:description" content="Metro 4 is an open source toolkit for developing with HTML, CSS, and JS. Quickly prototype your ideas or build your entire app with responsive grid system, extensive prebuilt components, and powerful plugins  .">
    <meta name="twitter:image" content="https://metroui.org.ua/images/m4-logo-social.png">

    <meta property="og:url" content="https://metroui.org.ua/v4/index.html">
    <meta property="og:title" content="Metro 4 Components Library">
    <meta property="og:description" content="Metro 4 is an open source toolkit for developing with HTML, CSS, and JS. Quickly prototype your ideas or build your entire app with responsive grid system, extensive prebuilt components, and powerful plugins  .">
    <meta property="og:type" content="website">
    <meta property="og:image" content="https://metroui.org.ua/images/m4-logo-social.png">
    <meta property="og:image:secure_url" content="https://metroui.org.ua/images/m4-logo-social.png">
    <meta property="og:image:type" content="image/png">
    <meta property="og:image:width" content="968">
    <meta property="og:image:height" content="504">

    <meta name="author" content="Sergey Pimenov">
    <meta name="description" content="The most popular HTML, CSS, and JS library in Metro style.">
    <meta name="keywords" content="HTML, CSS, JS, Metro, CSS3, Javascript, HTML5, UI, Library, Web, Development, Framework">

    <link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
    <link rel="icon" href="favicon.ico" type="image/x-icon">

    <link href="metro/css/metro-all.css?ver=@@b-version" rel="stylesheet">
    <link href="highlight/styles/github.css" rel="stylesheet">
    <link href="docsearch/docsearch.min.css" rel="stylesheet">
    <link href="css/site.css" rel="stylesheet">

    <title>Micro template engine - Metro 4 :: Popular HTML, CSS and JS library</title>
</head>
<body class="m4-cloak">

<header data-role="html-container" data-insert-mode="replace" data-html-source="header.html"></header>

<div data-role="html-container" data-insert-mode="replace" data-html-source="sidebar-menu.html"></div>

<div class="container-fluid docs-content">

    <div class="row flex-xl-nowrap">

            <div class="d-none d-block-xl cell-xl-2 order-2 border-left bd-light toc-wrapper">
                <h5>Table of contents</h5>
                <hr/>
                <ul class="toc-nav">
                    <li class="toc-entry"><a href="#">Micro templates</a></li>
                </ul>

            </div>

            <main class="cell-xl-10 order-1 pr-1-sx pl-1-sx pr-5-md pl-5-md">
                <div class="place-right d-none d-block-lg" style="width: 200px;">
                    <img src="images/logo.png" class="w-100" alt="">
                </div>

                <h1>Micro template engine</h1>
                <p class="text-leader">
                    Metro 4 contains micro template engine.
                </p>

                <!-- ads-html -->

                <h3>About</h3>
                <p>
                    Metro 4 contains micro template engine.
                    This feature specified in function <code>Metro.template</code>.
                    The function takes 2 parameters: <code>template</code> as string and <code>vars</code> defined as object.
                    Keys supported: <code>var</code>, <code>if</code>, <code>for</code>, <code>else</code>, <code>switch</code>, <code>case</code>, <code>break</code>.
                </p>

                <h3>Example</h3>

                <h5>html</h5>
                <pre><code class="html">
                    &lt;div id="template_result"&gt;&lt;/div&gt;
                </code></pre>

                <h5>javascript</h5>
                <pre><code class="html">
                    var template =
                         'My skills:' +
                         '<hr>' +
                         '<%if(this.showSkills) {%>' +
                         '<ul>' +
                         '<%for(var i = 0; i < this.skills.length; i++) {%>' +
                         '<li><%this.skills[i]%></li>' +
                         '<%}%>' +
                         '</ul>' +
                         '<br/><strong>Total: </strong><%this.skills.length%> main skills' +
                         '<%} else {%>' +
                         '<p>none</p>' +
                         '<%}%>';

                     var result = Metro.template(template, {
                         skills: [
                            "javascript",
                            "html",
                            "css",
                            "php",
                            "oracle",
                            "mysql",
                            "java",
                            "pascal",
                            "c/c++",
                            "kotlin"
                         ],
                         showSkills: true
                     });

                     $("#template_result").html(result);
                </code></pre>

                <h5>Result</h5>
                <div class="example">
                    <div class="row">
                        <div class="cell-md-6">
                            <div id="template_result"></div>
                        </div>
                        <div class="cell-md-6">
                            <pre class="m-0"><code class="html">
                                &lt;div id="template_result"&gt;
                                    My skills:
                                    &lt;hr&gt;
                                    &lt;ul&gt;
                                        &lt;li&gt;javascript&lt;/li&gt;
                                        &lt;li&gt;html&lt;/li&gt;
                                        &lt;li&gt;css&lt;/li&gt;
                                        &lt;li&gt;php&lt;/li&gt;
                                        &lt;li&gt;oracle&lt;/li&gt;
                                        &lt;li&gt;mysql&lt;/li&gt;
                                        &lt;li&gt;java&lt;/li&gt;
                                        &lt;li&gt;pascal&lt;/li&gt;
                                        &lt;li&gt;c/c++&lt;/li&gt;
                                        &lt;li&gt;kotlin&lt;/li&gt;
                                    &lt;/ul&gt;
                                    &lt;br&gt;
                                    &lt;strong&gt;Total: &lt;/strong&gt;10 main skills
                                &lt;/div&gt;
                            </code></pre>
                        </div>
                    </div>
                </div>

            </main>
        </div>

    </div>

    <script src="docsearch/docsearch.min.js"></script>


    <script src="metro/js/metro.js?ver=@@b-version"></script>
    <script src="highlight/highlight.pack.js"></script>
    <script src="js/clipboard.min.js"></script>
    <script src="js/site.js"></script>
    <script>
        var template =
            'My skills:' +
            '<hr>' +
            '<%if(this.showSkills) {%>' +
            '<ul>' +
            '<%for(var i = 0; i < this.skills.length; i++) {%>' +
            '<li><%this.skills[i]%></li>' +
            '<%}%>' +
            '</ul>' +
            '<br/><strong>Total: </strong><%this.skills.length%> main skills' +
            '<%} else {%>' +
            '<p>none</p>' +
            '<%}%>';

        var result = Metro.template(template, {
            skills: ["javascript", "html", "css", "php", "oracle", "mysql", "java", "pascal", "c/c++", "kotlin"],
            showSkills: true
        });

        $("#template_result").html(result);
    </script>
    <!-- ads-script -->
    <!-- ga-script -->
    <!-- hit-ua -->
</body>
</html>